/**
 * 
 */
package com.gragra.cooccClustering;
import com.gragra.clustering.ClusteringAlgorithm;
import com.gragra.clustering.SimpleSamplingBasedClusterer;
import com.gragra.sampling.annealingSchedules.LinearAnnealingFromMaxToMin;
import com.gragra.sampling.vector.BinaryStackedClassesUnitCRPFactory;
/**
 * @author Christoph Teichmann
 * 31.05.2013
 */
public class LeveledCRPClustering extends CRPClustering
{
	/* (non-Javadoc)
	 * @see com.gragra.contextClusterer.EvaluateContextClustering#makeClustering()
	 */
	@Override
	protected ClusteringAlgorithm makeClustering()
	{
		BinaryStackedClassesUnitCRPFactory bcrp = new BinaryStackedClassesUnitCRPFactory(this.getConcentrationParameter(), this.getLabelConcentrationParameter(), this.getNumberOfLabels(), this.getThreads());
		SimpleSamplingBasedClusterer ssbc = new SimpleSamplingBasedClusterer(this.getSamplingIntervalSize(), bcrp, this.getMinSampling(), getBurnIn(), new LinearAnnealingFromMaxToMin(this.getMaxAnneal(), this.getMinAnneal(), this.getStepSize()),this.getThreads());
		return ssbc;
	}
}